home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 2000 April: Mac OS SDK / Dev.CD Apr 00 SDK1.toast / Development Kits / Mac OS / Installer SDK 1.2.3 / Installer 4.0.8 / DeveloperInterfaces / AIncludes / InstallerScript.a < prev   
Encoding:
Text File  |  1998-02-12  |  16.1 KB  |  538 lines  |  [TEXT/MPS ]

  1. ;
  2. ;    File:        InstallerScript.a
  3. ;
  4. ;    Contains:    xxx put contents here xxx
  5. ;
  6. ;    Version:    Technology:    Installer 4.5
  7. ;                Package:    4.5
  8. ;
  9. ;    Copyright:    © 1984-1998 by Apple Computer, Inc.
  10. ;                All rights reserved.
  11. ;
  12. ;    Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13. ;                stack.  Include the file and version information (from above)
  14. ;                in the problem description and send to:
  15. ;                    Internet:    apple.bugs@applelink.apple.com
  16. ;                    AppleLink:    APPLE.BUGS
  17. ;
  18. ;
  19.  
  20.     IF &TYPE('__INSTALLERSCRIPT__') = 'UNDEFINED' THEN
  21. __INSTALLERSCRIPT__ SET 1
  22.  
  23.  
  24.     IF &TYPE('__FILES__') = 'UNDEFINED' THEN
  25.     include 'Files.a'
  26.     ENDIF
  27. ;        include 'Types.a'                                            ;
  28. ;            include 'ConditionalMacros.a'                            ;
  29. ;        include 'MixedMode.a'                                        ;
  30. ;        include 'OSUtils.a'                                        ;
  31. ;            include 'Memory.a'                                        ;
  32. ;            include 'Patches.a'                                    ;
  33. ;                include 'Kernel.a'                                    ;
  34. ;                    include 'Errors.a'                                ;
  35. ;                    include 'MachineExceptions.a'                    ;
  36. ;                    include 'Timing.a'                                ;
  37. ;                include 'OrderedItems.a'                            ;
  38. ;        include 'Finder.a'                                            ;
  39.  
  40.     IF &TYPE('__MEMORY__') = 'UNDEFINED' THEN
  41.     include 'Memory.a'
  42.     ENDIF
  43.  
  44.     IF &TYPE('__MIXEDMODE__') = 'UNDEFINED' THEN
  45.     include 'MixedMode.a'
  46.     ENDIF
  47.  
  48.     IF &TYPE('__TYPES__') = 'UNDEFINED' THEN
  49.     include 'Types.a'
  50.     ENDIF
  51.  
  52. kMaxNumOfFunctionParams            EQU        12
  53.  
  54. CallBackPBRec             RECORD    0
  55. fSelector                 ds.l   1        ; offset: $0 (0)
  56. fResult                     ds.l   1        ; offset: $4 (4)
  57. fParam                     ds.l   12        ; offset: $8 (8)
  58. sizeof                     EQU *            ; size:   $38 (56)
  59.                         ENDR
  60.  
  61. ; typedef struct CallBackPBRec  CallBackPBRec
  62. ; typedef CallBackPBRec     *CallBackPBPtr
  63. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  64. ;
  65. ;                                        Rule Function
  66. ;
  67. ;
  68. ;    Code Resource Calling Interface:
  69. ;
  70. ;        long YourRuleFunction( RuleFunctionPBPtr );
  71. ;
  72. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  73.  
  74. kTRUERuleFunctionResult            EQU        1
  75. kFALSERuleFunctionResult        EQU        0
  76.  
  77. RuleFunctionPBRec         RECORD    0
  78. fCallBackProcPtr         ds.l   1        ; offset: $0 (0)
  79. fTargetVRefNum             ds.w   1        ; offset: $4 (4)
  80. fTargetFolderDirID         ds.l   1        ; offset: $6 (6)
  81. fSystemVRefNum             ds.w   1        ; offset: $A (10)
  82. fSystemBlessedDirID         ds.l   1        ; offset: $C (12)
  83. fRefCon                     ds.l   1        ; offset: $10 (16)
  84. sizeof                     EQU *            ; size:   $14 (20)
  85.                         ENDR
  86.  
  87. ; typedef struct RuleFunctionPBRec  RuleFunctionPBRec
  88. ; typedef RuleFunctionPBRec  *RuleFunctionPBPtr
  89. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  90. ;
  91. ;                                        Action Atom Function
  92. ;
  93. ;
  94. ;    Code Resource Calling Interface:
  95. ;
  96. ;        long YourActionAtomFunction( ActionAtom2PBPtr );
  97. ;
  98. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  99.  
  100. before                            EQU        0
  101. after                            EQU        1
  102. cleanUpCancel                    EQU        2
  103.  
  104. ; typedef SInt8             InstallationStage
  105.  
  106. kActionAtomResultFatalError        EQU        -1
  107. kActionAtomResultContinue        EQU        0
  108. kActionAtomResultCancel            EQU        1
  109.  
  110. ; typedef long                 ActionAtomResult
  111. ActionAtom2PBRec         RECORD    0
  112. fMessageID                 ds.b   1        ; offset: $0 (0)
  113. padByte                     ds.b   1        ; offset: $1 (1)
  114. fStaticDataHdl             ds.l   1        ; offset: $2 (2)
  115. fCallBackProcPtr         ds.l   1        ; offset: $6 (6)
  116. fTargetVRefNum             ds.w   1        ; offset: $A (10)
  117. fTargetFolderDirID         ds.l   1        ; offset: $C (12)
  118. fSystemVRefNum             ds.w   1        ; offset: $10 (16)
  119. fSystemBlessedDirID         ds.l   1        ; offset: $12 (18)
  120. fRefCon                     ds.l   1        ; offset: $16 (22)
  121. fDoingInstall             ds.b   1        ; offset: $1A (26)
  122. fDidLiveUpdate             ds.b   1        ; offset: $1B (27)
  123. fInstallerTempDirID         ds.l   1        ; offset: $1C (28)
  124. sizeof                     EQU *            ; size:   $20 (32)
  125.                         ENDR
  126.  
  127. ; typedef struct ActionAtom2PBRec  ActionAtom2PBRec
  128. ; typedef ActionAtom2PBRec     *ActionAtom2PBPtr
  129. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  130. ;
  131. ;                                        Version Compare Function
  132. ;
  133. ;
  134. ;    Code Resource Calling Interface:
  135. ;
  136. ;        long YourComputeVersionFunctionSetupFunction( ComputeVersionPBPtr );
  137. ;
  138. ;    Return the version in BCD format.  For example:  ver 2.0.1 final release is 0x02018000
  139. ;
  140. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  141. ComputeVersionPB         RECORD    0
  142. fCallBackProcPtr         ds.l   1        ; offset: $0 (0)
  143. sizeof                     EQU *            ; size:   $4 (4)
  144.                         ENDR
  145.  
  146. ; typedef struct ComputeVersionPB  ComputeVersionPB
  147. ; typedef ComputeVersionPB     *ComputeVersionPBPtr
  148. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  149. ;
  150. ;                                        Target Search Function
  151. ;
  152. ;
  153. ;    Code Resource Calling Interface:
  154. ;
  155. ;        SearchResult YourTargetSearchFunction( SearchProcedurePBPtr );
  156. ;
  157. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  158.  
  159. kFatalSearchError                EQU        -1
  160. kSearchSuccessful                EQU        0
  161. kCancelSearchAndInstallation    EQU        1
  162.  
  163. ; typedef SInt8             SearchResult
  164. FoundFileRec             RECORD    0
  165. vRefNum                     ds.w   1        ; offset: $0 (0)
  166. parID                     ds.l   1        ; offset: $2 (2)
  167. name                     ds.l   16        ; offset: $6 (6)
  168. fReferenceID             ds.w   1        ; offset: $46 (70)
  169. sizeof                     EQU *            ; size:   $48 (72)
  170.                         ENDR
  171.  
  172. ; typedef struct FoundFileRec  FoundFileRec
  173. ; typedef FoundFileRec         *FoundFileArrayPtr
  174. ; typedef FoundFileArrayPtr  *FoundFileArrayHdl
  175. SearchProcedurePBRec     RECORD    0
  176. fCallBackProcPtr         ds.l   1        ; offset: $0 (0)
  177. fTargetVRefNum             ds.w   1        ; offset: $4 (4)
  178. fTargetFolderDirID         ds.l   1        ; offset: $6 (6)
  179. fSystemVRefNum             ds.w   1        ; offset: $A (10)
  180. fSystemBlessedDirID         ds.l   1        ; offset: $C (12)
  181. fRefCon                     ds.l   1        ; offset: $10 (16)
  182. fFileSpecType             ds.l   1        ; offset: $14 (20)
  183. fFileSpecCreator         ds.l   1        ; offset: $18 (24)
  184. fFileSpecCrDate             ds.l   1        ; offset: $1C (28)
  185. fFileSpecPath             ds.l   64        ; offset: $20 (32)
  186. fFoundFilesArray         ds.l   1        ; offset: $120 (288)
  187. sizeof                     EQU *            ; size:   $124 (292)
  188.                         ENDR
  189.  
  190. ; typedef struct SearchProcedurePBRec  SearchProcedurePBRec
  191. ; typedef SearchProcedurePBRec  *SearchProcedurePBPtr
  192. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  193. ;
  194. ;                                        Setup Function
  195. ;
  196. ;
  197. ;    Code Resource Calling Interface:
  198. ;
  199. ;        long YourSetupFunction( EnvironmentSetupPBPtr );
  200. ;
  201. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  202.  
  203. kContinueInstallerSetup            EQU        0
  204. kQuitInstallerNow                EQU        -1
  205.  
  206. EnvironmentSetupPB         RECORD    0
  207. fCallBackProcPtr         ds.l   1        ; offset: $0 (0)
  208. fTargetFSSpec             ds     FSSpec    ; offset: $4 (4)
  209. fSystemVRefNum             ds.w   1        ; offset: $4A (74)
  210. sizeof                     EQU *            ; size:   $4C (76)
  211.                         ENDR
  212.  
  213. ; typedef struct EnvironmentSetupPB  EnvironmentSetupPB
  214. ; typedef EnvironmentSetupPB  *EnvironmentSetupPBPtr
  215. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  216. ;
  217. ;                                        Atom Extender Function
  218. ;
  219. ;
  220. ;    Code Resource Calling Interface:
  221. ;
  222. ;        long YourAtomExtenderFunction( ExtenderPBPtr );
  223. ;
  224. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  225.  
  226. kFileAtomDataFork                EQU        0
  227. kFileAtomRsrcFork                EQU        1
  228. kFileAtomRsrcForkFromDataFork    EQU        2
  229. kRsrcAtom                        EQU        3
  230. kFontAtom                        EQU        4
  231. kActionAtom                        EQU        5
  232.  
  233. ; typedef SInt8             DataType
  234.  
  235. kFatalError                        EQU        -1
  236. kContinueAsNormal                EQU        0
  237. kCancelInstallation                EQU        1
  238. kCopiedData                        EQU        2
  239.  
  240. ; typedef SInt16             ExtenderResultCode
  241.  
  242. kInitialize                        EQU        0
  243. kBeforePart                        EQU        1
  244. kAfterPart                        EQU        2
  245. kSuccess                        EQU        3
  246. kCancel                            EQU        4
  247.  
  248. ; typedef SInt8             ExtenderMessageID
  249. EnvironsHeaderRec         RECORD    0
  250. fMessageID                 ds.b   1        ; offset: $0 (0)
  251. pad1                     ds.b   1        ; offset: $1 (1)
  252. fStaticDataHdl             ds.l   1        ; offset: $2 (2)
  253. fCallBackProcPtr         ds.l   1        ; offset: $6 (6)
  254. fTargetVRefNum             ds.w   1        ; offset: $A (10)
  255. fTargetFolderDirID         ds.l   1        ; offset: $C (12)
  256. fSystemVRefNum             ds.w   1        ; offset: $10 (16)
  257. fSystemBlessedDirID         ds.l   1        ; offset: $12 (18)
  258. fRefCon                     ds.l   1        ; offset: $16 (22)
  259. fDataType                 ds.b   1        ; offset: $1A (26)
  260. pad2                     ds.b   1        ; offset: $1B (27)
  261. sizeof                     EQU *            ; size:   $1C (28)
  262.                         ENDR
  263.  
  264. ; typedef struct EnvironsHeaderRec  EnvironsHeaderRec
  265. CopyHeaderRec             RECORD    0
  266. fSourceFile                 ds     FSSpec    ; offset: $0 (0)
  267. fTargetFile                 ds     FSSpec    ; offset: $46 (70)
  268. fTotalTargetSize         ds.l   1        ; offset: $8C (140)
  269. fTargetPosStart             ds.l   1        ; offset: $90 (144)
  270. fTargetPartSize             ds.l   1        ; offset: $94 (148)
  271. fSourcePartSize             ds.l   1        ; offset: $98 (152)
  272. fInstallerTempDirID         ds.l   1        ; offset: $9C (156)
  273. sizeof                     EQU *            ; size:   $A0 (160)
  274.                         ENDR
  275.  
  276. ; typedef struct CopyHeaderRec  CopyHeaderRec
  277. BasicCopyRec             RECORD    0
  278. fEnvironmentHeader         ds     EnvironsHeaderRec ; offset: $0 (0)
  279. fCopyPBHeader             ds     CopyHeaderRec ; offset: $1C (28)
  280. sizeof                     EQU *            ; size:   $BC (188)
  281.                         ENDR
  282.  
  283. ; typedef struct BasicCopyRec  BasicCopyRec
  284. RsrcCopyRec             RECORD    0
  285. fEnvironmentHeader         ds     EnvironsHeaderRec ; offset: $0 (0)
  286. fCopyPBHeader             ds     CopyHeaderRec ; offset: $1C (28)
  287. fSourceRsrcType             ds.l   1        ; offset: $BC (188)
  288. fSourceRsrcID             ds.w   1        ; offset: $C0 (192)
  289. fTargetRsrcType             ds.l   1        ; offset: $C2 (194)
  290. fTargetRsrcID             ds.w   1        ; offset: $C6 (198)
  291. fTargetRsrcName             ds.l   64        ; offset: $C8 (200)
  292. fTargetRsrcAttrs         ds.w   1        ; offset: $1C8 (456)
  293. sizeof                     EQU *            ; size:   $1CA (458)
  294.                         ENDR
  295.  
  296. ; typedef struct RsrcCopyRec  RsrcCopyRec
  297. FontCopyRec             RECORD    0
  298. fEnvironmentHeader         ds     EnvironsHeaderRec ; offset: $0 (0)
  299. fCopyPBHeader             ds     CopyHeaderRec ; offset: $1C (28)
  300. fSourceFontRsrcType         ds.l   1        ; offset: $BC (188)
  301. fSourceFontRsrcID         ds.w   1        ; offset: $C0 (192)
  302. fTargetFontRsrcType         ds.l   1        ; offset: $C2 (194)        ; FONT, NFNT, or sfnt
  303. fTargetFontRsrcID         ds.w   1        ; offset: $C6 (198)
  304. fTargetFontRsrcName         ds.l   64        ; offset: $C8 (200)
  305. fTargetFontRsrcAttrs     ds.w   1        ; offset: $1C8 (456)
  306. fFamilyName                 ds.l   64        ; offset: $1CA (458)
  307. fFamilyID                 ds.w   1        ; offset: $2CA (714)
  308. fFontSize                 ds.w   1        ; offset: $2CC (716)
  309. fFontStyle                 ds.w   1        ; offset: $2CE (718)
  310. sizeof                     EQU *            ; size:   $2D0 (720)
  311.                         ENDR
  312.  
  313. ; typedef struct FontCopyRec  FontCopyRec
  314. ExtenderPBRec             RECORD    0
  315. fBasicPBRec                 ds     BasicCopyRec ; offset: $0 (0)
  316.                          ORG 0
  317. fFileCopyPBRec             ds     BasicCopyRec ; offset: $0 (0)
  318.                          ORG 0
  319. fRsrcCopyPBRec             ds     RsrcCopyRec ; offset: $0 (0)
  320.                          ORG 0
  321. fFontCopyPBRec             ds     FontCopyRec ; offset: $0 (0)
  322.                          ORG 720
  323. sizeof                     EQU *            ; size:   $2D0 (720)
  324.                         ENDR
  325.  
  326. ; typedef union ExtenderPBRec  ExtenderPBRec
  327. ; typedef ExtenderPBRec     *ExtenderPBPtr
  328. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  329. ;
  330. ;                                        Callback Glue Routines
  331. ;
  332. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  333. ; Memory Related
  334. ;
  335. ; pascal Handle INewHandle(InstallerCallBackUPP pCallBackProcPtr, unsigned long newHandleSize)
  336. ;
  337.     IF GENERATINGCFM THEN
  338.         IMPORT_CFM_FUNCTION    INewHandle
  339.     ENDIF
  340.  
  341. ;
  342. ; pascal void IDisposHandle(InstallerCallBackUPP pCallBackProcPtr, Handle storageHandle)
  343. ;
  344.     IF GENERATINGCFM THEN
  345.         IMPORT_CFM_FUNCTION    IDisposHandle
  346.     ENDIF
  347.  
  348. ;
  349. ; pascal void IHLock(InstallerCallBackUPP pCallBackProcPtr, Handle storageHandle)
  350. ;
  351.     IF GENERATINGCFM THEN
  352.         IMPORT_CFM_FUNCTION    IHLock
  353.     ENDIF
  354.  
  355. ;
  356. ; pascal void IHUnLock(InstallerCallBackUPP pCallBackProcPtr, Handle storageHandle)
  357. ;
  358.     IF GENERATINGCFM THEN
  359.         IMPORT_CFM_FUNCTION    IHUnLock
  360.     ENDIF
  361.  
  362. ; Atom Extender Related
  363. ;
  364. ; pascal OSErr ReadSourceData(InstallerCallBackUPP pCallBackProcPtr, long *count, Ptr storagePtr)
  365. ;
  366.     IF GENERATINGCFM THEN
  367.         IMPORT_CFM_FUNCTION    ReadSourceData
  368.     ENDIF
  369.  
  370. ;
  371. ; pascal OSErr WriteTargetData(InstallerCallBackUPP pCallBackProcPtr, long count, Ptr storagePtr)
  372. ;
  373.     IF GENERATINGCFM THEN
  374.         IMPORT_CFM_FUNCTION    WriteTargetData
  375.     ENDIF
  376.  
  377. ;
  378. ; pascal OSErr ReadTargetData(InstallerCallBackUPP pCallBackProcPtr, long *count, Ptr storagePtr)
  379. ;
  380.     IF GENERATINGCFM THEN
  381.         IMPORT_CFM_FUNCTION    ReadTargetData
  382.     ENDIF
  383.  
  384. ;
  385. ; pascal OSErr SetTargetDataPos(InstallerCallBackUPP pCallBackProcPtr, short positionMode, long positionOffset)
  386. ;
  387.     IF GENERATINGCFM THEN
  388.         IMPORT_CFM_FUNCTION    SetTargetDataPos
  389.     ENDIF
  390.  
  391. ;
  392. ; pascal OSErr GetTargetDataPos(InstallerCallBackUPP pCallBackProcPtr, long *positionOffset)
  393. ;
  394.     IF GENERATINGCFM THEN
  395.         IMPORT_CFM_FUNCTION    GetTargetDataPos
  396.     ENDIF
  397.  
  398. ;
  399. ; pascal OSErr GetTargetDataEOF(InstallerCallBackUPP pCallBackProcPtr, long *theLength)
  400. ;
  401.     IF GENERATINGCFM THEN
  402.         IMPORT_CFM_FUNCTION    GetTargetDataEOF
  403.     ENDIF
  404.  
  405. ;
  406. ; pascal OSErr SetSourceDataPos(InstallerCallBackUPP pCallBackProcPtr, short positionMode, long positionOffset)
  407. ;
  408.     IF GENERATINGCFM THEN
  409.         IMPORT_CFM_FUNCTION    SetSourceDataPos
  410.     ENDIF
  411.  
  412. ;
  413. ; pascal OSErr GetSourceDataPos(InstallerCallBackUPP pCallBackProcPtr, long *positionOffset)
  414. ;
  415.     IF GENERATINGCFM THEN
  416.         IMPORT_CFM_FUNCTION    GetSourceDataPos
  417.     ENDIF
  418.  
  419. ;
  420. ; pascal OSErr GetSourceDataEOF(InstallerCallBackUPP pCallBackProcPtr, long *theLength)
  421. ;
  422.     IF GENERATINGCFM THEN
  423.         IMPORT_CFM_FUNCTION    GetSourceDataEOF
  424.     ENDIF
  425.  
  426. ; Action Atom Related
  427. ;
  428. ; pascal OSErr MakeFSSpecFromFileSpecID(InstallerCallBackUPP pCallBackProcPtr, short pFileSpecID, FSSpec *pFSSpecPtr, StringHandle *pExtraPathInfo)
  429. ;
  430.     IF GENERATINGCFM THEN
  431.         IMPORT_CFM_FUNCTION    MakeFSSpecFromFileSpecID
  432.     ENDIF
  433.  
  434. ;
  435. ; pascal void SuspendWaitCursor(InstallerCallBackUPP pCallBackProcPtr)
  436. ;
  437.     IF GENERATINGCFM THEN
  438.         IMPORT_CFM_FUNCTION    SuspendWaitCursor
  439.     ENDIF
  440.  
  441. ;
  442. ; pascal void ResumeWaitCursor(InstallerCallBackUPP pCallBackProcPtr)
  443. ;
  444.     IF GENERATINGCFM THEN
  445.         IMPORT_CFM_FUNCTION    ResumeWaitCursor
  446.     ENDIF
  447.  
  448. ;
  449. ; pascal void IncrementStatusBar(InstallerCallBackUPP pCallBackProcPtr, short pIncrementAmount)
  450. ;
  451.     IF GENERATINGCFM THEN
  452.         IMPORT_CFM_FUNCTION    IncrementStatusBar
  453.     ENDIF
  454.  
  455. ;
  456. ; pascal Boolean IsUserInteractionAllowed(InstallerCallBackUPP pCallBackProcPtr)
  457. ;
  458.     IF GENERATINGCFM THEN
  459.         IMPORT_CFM_FUNCTION    IsUserInteractionAllowed
  460.     ENDIF
  461.  
  462. ;
  463. ; pascal OSErr InstallerFindSpecialFolder(InstallerCallBackUPP pCallBackProcPtr, short pVRefNum, OSType pfolderType, Boolean pCreateFolder, short *pFoundVRefNum, long *pFoundDirID)
  464. ;
  465.     IF GENERATINGCFM THEN
  466.         IMPORT_CFM_FUNCTION    InstallerFindSpecialFolder
  467.     ENDIF
  468.  
  469. ;
  470. ; pascal long GetBoxFlagOverwrite(InstallerCallBackUPP pCallBackProcPtr)
  471. ;
  472.     IF GENERATINGCFM THEN
  473.         IMPORT_CFM_FUNCTION    GetBoxFlagOverwrite
  474.     ENDIF
  475.  
  476. ;
  477. ; pascal Boolean IsLaunchedByUpgrader(InstallerCallBackUPP pCallBackProcPtr)
  478. ;
  479.     IF GENERATINGCFM THEN
  480.         IMPORT_CFM_FUNCTION    IsLaunchedByUpgrader
  481.     ENDIF
  482.  
  483. ;
  484. ; pascal Boolean IsParasiteScript(InstallerCallBackUPP pCallBackProcPtr)
  485. ;
  486.     IF GENERATINGCFM THEN
  487.         IMPORT_CFM_FUNCTION    IsParasiteScript
  488.     ENDIF
  489.  
  490. ;
  491. ; pascal void RegisterScriptAction(InstallerCallBackUPP pCallBackProcPtr, short actionClassID, short actionIdentifier, void *param0, void *param1, void *param2, void *param3, void *resultPtr)
  492. ;
  493.     IF GENERATINGCFM THEN
  494.         IMPORT_CFM_FUNCTION    RegisterScriptAction
  495.     ENDIF
  496.  
  497. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  498. ;
  499. ;                                        Obsolete Interfaces
  500. ;
  501. ;///////////////////////////////////////////////////////////////////////////////////////////////////
  502. ; Old Action Atom Parameter Block
  503. AAPBRec                 RECORD    0
  504. targetVRefNum             ds.w   1        ; offset: $0 (0)
  505. blessedDirID             ds.l   1        ; offset: $2 (2)
  506. aaRefCon                 ds.l   1        ; offset: $6 (6)
  507. doingInstall             ds.b   1        ; offset: $A (10)
  508. whichStage                 ds.b   1        ; offset: $B (11)
  509. didLiveUpdate             ds.b   1        ; offset: $C (12)
  510. padByte                     ds.b   1        ; offset: $D (13)
  511. installerTempDirID         ds.l   1        ; offset: $E (14)
  512. sizeof                     EQU *            ; size:   $12 (18)
  513.                         ENDR
  514.  
  515. ; typedef struct AAPBRec     AAPBRec
  516. ; typedef AAPBRec             *AAPBRecPtr
  517. ; Action Handler Parameter Block
  518. ActionHandlerPB         RECORD    0
  519. fStaticDataHdl             ds.l   1        ; offset: $0 (0)
  520. fCallBackProcPtr         ds.l   1        ; offset: $4 (4)
  521. fTargetVRefNum             ds.w   1        ; offset: $8 (8)
  522. fTargetFolderDirID         ds.l   1        ; offset: $A (10)
  523. fSystemVRefNum             ds.w   1        ; offset: $E (14)
  524. fSystemBlessedDirID         ds.l   1        ; offset: $10 (16)
  525. fActionClassID             ds.w   1        ; offset: $14 (20)
  526. fActionIdentifier         ds.w   1        ; offset: $16 (22)
  527. fParam0                     ds.l   1        ; offset: $18 (24)
  528. fParam1                     ds.l   1        ; offset: $1C (28)
  529. fParam2                     ds.l   1        ; offset: $20 (32)
  530. fParam3                     ds.l   1        ; offset: $24 (36)
  531. fResultPtr                 ds.l   1        ; offset: $28 (40)
  532. sizeof                     EQU *            ; size:   $2C (44)
  533.                         ENDR
  534.  
  535. ; typedef struct ActionHandlerPB  ActionHandlerPB
  536. ; typedef ActionHandlerPB     *ActionHandlerPBPtr
  537.     ENDIF ; __INSTALLERSCRIPT__
  538.